﻿namespace Runner
{
    using System;
    using GravityWorks.RockPaperScissors.Toolkit;
    using RockPaperScissors.CSharp;
    using RockPaperScissors.IronPython;
    using RockPaperScissors.VisualBasic;
    using RockPaperScissorsCplusPlus;

    public static class Program
    {
        static void Main()
        {
            var gl = new GameLog();
            var rules = new RuleSet();

            IPlayer[] players = {
                new CSharpPlayer(),
                new FSharpFactory.FSharpPlayer(),
                new IronPythonWrapper(),
                new VBPlayer(),
                new CPlusPlusPlayer()
                        };

            foreach (IPlayer player in players)
            {
                MoveType result = player.Shoot(gl, rules, 1);
                Console.WriteLine(String.Format("{0} shot {1}", player.GetType(), result));
            }
            Console.WriteLine("Press enter to continue");
            Console.ReadLine();
        }
    }
}
